<?
$html=file_get_contents('../../tpl/parse_regex.htm');


function getmicrotime($elapsed=false){
    list($usec, $sec) = explode(" ", microtime());
    $tm = ((float)$usec + (float)$sec);
    if ($elapsed) return $tm-$GLOBALS['jl_time_start'];
    else return $tm;
}

function parser_callback($control){
	// восстановили ссылку на экземпляр
	//$ths=&$GLOBALS['Jlib_caller_self'][$GLOBALS['Jlib_caller_counter']];
	// вызвали callback-метод
	//return $ths->parse($control);
	//echo '<pre>',print_r( $control, true),'</pre>';
	return $control[2];
}

$rega='~{(\\w*):(\\w*)((?:\\s+\\w+=(?:".*"|.*))*)\\s*}(?:(.*(?=#-/\\1}))|)~msU';

$jl_time_start=getmicrotime();
for($i=0; $i<100;$i++)
	$pg = preg_replace_callback($rega,'parser_callback',$html);
echo getmicrotime($jl_time_start);
echo $pg;
	

?>
